package com.synergy.stockflow.sales.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.synergy.stockflow.product.entity.Material;
import io.swagger.v3.oas.annotations.media.Schema;
import java.math.BigDecimal;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Schema
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "shipping_details")
public class ShippingDetails {
    /**
     * 发货详情编码
     */
    @TableId(value = "shipping_details_id", type = IdType.ASSIGN_ID)
    @Schema(description="发货详情编码")
    private String shippingDetailsId;

    /**
     * 出库记录编码
     */
    @TableField(value = "shipping_details_shipment_history_id")
    @Schema(description="出库记录编码")
    private String shippingDetailsShipmentHistoryId;

    /**
     * 产品编码
     */
    @TableField(value = "shipping_details_products_id")
    @Schema(description="产品编码")
    private String shippingDetailsProductsId;

    /**
     * 待出库数量
     */
    @TableField(value = "shipping_details_to_be_shipped")
    @Schema(description="待出库数量")
    private BigDecimal shippingDetailsToBeShipped;

    /**
     * 报价明细编码
     */
    @TableField(value = "shipping_details_quote_details_id")
    @Schema(description="报价明细编码")
    private String shippingDetailsQuoteDetailsId;

    /**
     * 单位
     */
    @TableField(value = "shipping_details_unit")
    @Schema(description="单位")
    private String shippingDetailsUnit;

    /**
     * 批次号
     */
    @TableField(value = "shipping_details_lot_number")
    @Schema(description="批次号")
    private String shippingDetailsLotNumber;

    /**
     * 本次出库数量
     */
    @TableField(value = "shipping_details_outbound_shipments")
    @Schema(description="本次出库数量")
    private BigDecimal shippingDetailsOutboundShipments;

    /**
     * 出库单重量
     */
    @TableField(value = "shipping_details_weight")
    @Schema(description="出库单重量")
    private BigDecimal shippingDetailsWeight;

    /**
     * 出库总重量
     */
    @TableField(value = "shipping_details_total_weight")
    @Schema(description="出库总重量")
    private BigDecimal shippingDetailsTotalWeight;

    @TableField(exist = false)
    @Schema(description="出库总重量")
    private BigDecimal zong;

    @TableField(exist = false)
    @Schema(description="QuoteDetails")
    private QuoteDetails quoteDetails;

    @TableField(exist = false)
    @Schema(description="Material")
    private Material material;
}